﻿using System;
using System.Collections.Generic;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.Security.Permissions;
using System.Xml;
using System.Xml.Serialization;
namespace dasBlog.Storage
{
    public interface IStorageBusLocal
    {
        IStorageNode FindNode(Moniker nodeUri);
    }

    [ServiceContract]
    public interface IStorageBus
    {
        [OperationContract, PrincipalPermission(SecurityAction.Demand, Role="admin")]
        void AddStorageScope(ScopeDescription scopeDescription);
        [OperationContract, PrincipalPermission(SecurityAction.Demand, Role = "admin")]
        void RemoveStorageScope(string scopeName);
        [OperationContract, PrincipalPermission(SecurityAction.Demand, Role = "admin")]
        List<ScopeDescription> GetScopes();
        [OperationContract, PrincipalPermission(SecurityAction.Demand, Role = "admin")]
        NodeDescription FindNode(Moniker nodeUri);
    }
}

